package com.atguigu.gulimall.product.vo;

import com.atguigu.gulimall.product.entity.SkuImagesEntity;
import com.atguigu.gulimall.product.entity.SkuInfoEntity;
import com.atguigu.gulimall.product.entity.SpuInfoDescEntity;
import lombok.Data;

import java.util.List;

/**
 * @Author : Jungle
 * @Description :
 */
@Data
public class SkuItemVo {
    //1、基本信息的获取 `pms_sku_info`
    private SkuInfoEntity info;

    private boolean hasStock=true;

    //2、sku的图片信息  `pms_sku_images`
    private List<SkuImagesEntity> images;
    //3、获取spu的销售属性组合
    private List<SkuItemSaleAttrVo> saleAttr;
    //4、获取spu的介绍信息 `pms_spu_info_desc`
    private SpuInfoDescEntity desp;
    //5、获取spu规格参数信息
    private List<SpuItemAttrGroupVo> groupAttrs;
    //当前商品的秒杀优惠信息
    private SeckillInfoVo seckillInfo;


    //下面的属性都已经提取到外面
    /**
     * 销售属性
     */
    //@Data
    //public static class SkuItemSaleAttrVo {
    //    private Long attrId;
    //    private String attrName;
    //    /**
    //     * 销售属性可能的值  比如颜色  蓝色，黑色，红色
    //     */
    //    private List<String> attrValues;
    //
    //}

    /**
     * 基本属性 分组名+属性集  必须要提取到外面，不然连表查询会报错
     */
    //@Data
    //public static class SpuItemAttrGroupVo {
    //    private String groupName;
    //    private List<SpuBaseAttrVo> attrs;
    //}


    /**
     * 单个基本属性vo  这里提到外面用attr来代替
     */
    //@Data
    //public static class SpuBaseAttrVo {
    //    private String attrName;
    //    private String attrValue;
    //
    //}


}
